package com.easylinkin.linkappapi.calculaterule.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.easylinkin.linkappapi.calculaterule.entity.CalculateConfig;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;

/**
 * <p>
 * 计算配置 Mapper 接口
 * </p>
 *
 * @author TongJie
 * @since 2020-06-17
 */
public interface CalculateConfigMapper extends BaseMapper<CalculateConfig> {

    /**
     * 查询单个详情
     */
    CalculateConfig getCalculateConfig(String id);

    /**
     * 查询计算配置
     *
     * @param calculateConfig vo
     * @return 计算配置查询结果
     */
    List<CalculateConfig> getCalculateConfigs(@Param("calculateConfig") CalculateConfig calculateConfig);

    /**
     * 查询计算配置 分页
     *
     * @param page 分页参数
     * @param calculateConfig vo
     * @return 查询结果
     */
    IPage<CalculateConfig> getCalculateConfigs(@Param("page") Page page, @Param("calculateConfig") CalculateConfig calculateConfig);

    /**
     * 根据数据源id 和 计算配置的类型查询
     *
     * @param dataSourceId 数据源id
     * @param type 计算配置类型
     */
    List<CalculateConfig> getCalculateConfigs2(@Param("dataSourceId") String dataSourceId, @Param("type") String type);

}
